package com.zhao;

import com.zhao.lazy.LazyThreadUnsafe;

/**
 * 双重检查
 * 线程安全、效率较高。
 * 推荐使用
 */
public class DoubleCheck {
    //1.私有化构造方法
    private DoubleCheck() {

    }
    //2.声明静态变量
    private static DoubleCheck doubleCheck;
    //3.提供获取实例的接口
    public static DoubleCheck getInstance() {
        if (doubleCheck == null) {
            synchronized (DoubleCheck.class) {
                if (doubleCheck == null) {
                    doubleCheck = new DoubleCheck();
                }
            }
        }
        return doubleCheck;
    }
}
